mul=0
acc=1
ans=1
from math import sqrt       
import sys          
sys.setrecursionlimit(10000)
sys.setrecursionlimit(100000)
                 
for _ in range(1,10001):
  
  mul +=_
  #acc*=_
  #if (mul-acc)%100==0 and (mul-acc) !=0:
  if mul %100 ==0:
    ans+=1
    
def gcd(a,b):
  if b==0:
    return a
  else:
    return gcd(b, a % b)
  
print(gcd(100,200))
print(2024041331404202//200 *4 +2)
print(40480826628085)



def sieve(n):
    # 生成 2 到 n 的素数表
    is_prime = [True] * (n + 1)  # 初始假设全为素数
    is_prime[0] = is_prime[1] = False  # 0 和 1 不是素数
    for i in range(2, int(n ** 0.5) + 1):  # 只需检查到 sqrt(n)
        if is_prime[i]:
            for j in range(i * i, n + 1, i):  # 标记 i 的倍数为非素数
                is_prime[j] = False
    return [i for i in range(2, n + 1) if is_prime[i]]  # 返回素数列表

# 示例
#print(sieve(30))  # 输出 [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]

def f(n):
  is_prime = [True] * (n+1)
  is_prime[0]=is_prime[1]=False
  for i in range(2,int(sqrt(n))+1):
    if is_prime[i]:
      for j in range(i*i,n+1,i):
        is_prime[j]=False
  primes = []    
  for i in range(n+1):
    if is_prime[i]==True:
      primes.append(i)
  for _ in primes:
    print(_)
f(30)